/**
 */
package org.mro.grib.model.files.secondEdition.grids;


/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Grid Definition Template31000</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getNumberOfHorizontalPoints <em>Number Of Horizontal Points</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getBasicAngleOfTheInitialProductionDomain <em>Basic Angle Of The Initial Production Domain</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getSubdivisionsOfBasicAngle <em>Subdivisions Of Basic Angle</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLatitudeOfFirstGridPoint <em>Latitude Of First Grid Point</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLongitudeOfFirstGridPoint <em>Longitude Of First Grid Point</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getScanningMode <em>Scanning Mode</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLatitudeOfLastGridPoint <em>Latitude Of Last Grid Point</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLongitudeOfLastGridPoint <em>Longitude Of Last Grid Point</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getTypeOfHorizontalLine <em>Type Of Horizontal Line</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getNumberOfVerticalPoints <em>Number Of Vertical Points</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getPhysicalMeaningOfVerticalCoordinate <em>Physical Meaning Of Vertical Coordinate</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getVerticalDimensionCoordinateValuesDefinition <em>Vertical Dimension Coordinate Values Definition</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getNumberOfCoefficients <em>Number Of Coefficients</em>}</li>
 *   <li>{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getCoefficientsOffset <em>Coefficients Offset</em>}</li>
 * </ul>
 * </p>
 *
 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000()
 * @model annotation="http://www.eclipse.org/emf/2002/GenModel description='cross-section grid with points equally spaced on the horizontal' note1='Basic angle of the initial production domain and subdivisions of this basic angle are provided to manage cases where\r\nthe recommended unit of 10\u20136 degrees is not applicable to describe the extreme longitudes and latitudes. For these last\r\ndescriptors, the unit is equal to the ratio of the basic angle and the subdivisions number.\r\nFor ordinary cases, zero and missing values should be coded, equivalent to respective values of 1 and 106 (10\u20136\r\ndegrees unit).' note2='A scaled value of radius of spherical Earth, or major or minor axis of oblate spheroid Earth, is derived by applying the\r\nappropriate scale factor to the value expressed in metres.'"
 * @generated
 */
public interface GridDefinitionTemplate31000 extends EarthShapeGridDefinition {
	/**
	 * Returns the value of the '<em><b>Number Of Horizontal Points</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Number Of Horizontal Points</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Number Of Horizontal Points</em>' attribute.
	 * @see #setNumberOfHorizontalPoints(int)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_NumberOfHorizontalPoints()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Number of horizontal points' description_en='Number of horizontal points'"
	 * @generated
	 */
	int getNumberOfHorizontalPoints();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getNumberOfHorizontalPoints <em>Number Of Horizontal Points</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Number Of Horizontal Points</em>' attribute.
	 * @see #getNumberOfHorizontalPoints()
	 * @generated
	 */
	void setNumberOfHorizontalPoints(int value);

	/**
	 * Returns the value of the '<em><b>Basic Angle Of The Initial Production Domain</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Basic Angle Of The Initial Production Domain</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Basic Angle Of The Initial Production Domain</em>' attribute.
	 * @see #setBasicAngleOfTheInitialProductionDomain(int)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_BasicAngleOfTheInitialProductionDomain()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Basic angle of the initial production domain' description_en='Basic angle of the initial production domain (see Note 1)'"
	 * @generated
	 */
	int getBasicAngleOfTheInitialProductionDomain();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getBasicAngleOfTheInitialProductionDomain <em>Basic Angle Of The Initial Production Domain</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Basic Angle Of The Initial Production Domain</em>' attribute.
	 * @see #getBasicAngleOfTheInitialProductionDomain()
	 * @generated
	 */
	void setBasicAngleOfTheInitialProductionDomain(int value);

	/**
	 * Returns the value of the '<em><b>Subdivisions Of Basic Angle</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Subdivisions Of Basic Angle</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Subdivisions Of Basic Angle</em>' attribute.
	 * @see #setSubdivisionsOfBasicAngle(int)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_SubdivisionsOfBasicAngle()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Subdivisions of basic angle' description_en='Subdivisions of basic angle used to define extreme longitudes and latitudes, and direction\r\nincrements (see Note 1)'"
	 * @generated
	 */
	int getSubdivisionsOfBasicAngle();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getSubdivisionsOfBasicAngle <em>Subdivisions Of Basic Angle</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Subdivisions Of Basic Angle</em>' attribute.
	 * @see #getSubdivisionsOfBasicAngle()
	 * @generated
	 */
	void setSubdivisionsOfBasicAngle(int value);

	/**
	 * Returns the value of the '<em><b>Latitude Of First Grid Point</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Latitude Of First Grid Point</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Latitude Of First Grid Point</em>' attribute.
	 * @see #setLatitudeOfFirstGridPoint(int)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_LatitudeOfFirstGridPoint()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='La1' description_en='Latitude of first grid point (see Note 1)'"
	 * @generated
	 */
	int getLatitudeOfFirstGridPoint();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLatitudeOfFirstGridPoint <em>Latitude Of First Grid Point</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Latitude Of First Grid Point</em>' attribute.
	 * @see #getLatitudeOfFirstGridPoint()
	 * @generated
	 */
	void setLatitudeOfFirstGridPoint(int value);

	/**
	 * Returns the value of the '<em><b>Longitude Of First Grid Point</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Longitude Of First Grid Point</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Longitude Of First Grid Point</em>' attribute.
	 * @see #setLongitudeOfFirstGridPoint(int)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_LongitudeOfFirstGridPoint()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Lo1' description_en='Longitude of first grid point (see Note 1)'"
	 * @generated
	 */
	int getLongitudeOfFirstGridPoint();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLongitudeOfFirstGridPoint <em>Longitude Of First Grid Point</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Longitude Of First Grid Point</em>' attribute.
	 * @see #getLongitudeOfFirstGridPoint()
	 * @generated
	 */
	void setLongitudeOfFirstGridPoint(int value);

	/**
	 * Returns the value of the '<em><b>Scanning Mode</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Scanning Mode</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Scanning Mode</em>' attribute.
	 * @see #setScanningMode(byte)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_ScanningMode()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Scanning mode' description_en='Scanning mode (flags \u2013 see Flag table 3.4)'"
	 * @generated
	 */
	byte getScanningMode();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getScanningMode <em>Scanning Mode</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Scanning Mode</em>' attribute.
	 * @see #getScanningMode()
	 * @generated
	 */
	void setScanningMode(byte value);

	/**
	 * Returns the value of the '<em><b>Latitude Of Last Grid Point</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Latitude Of Last Grid Point</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Latitude Of Last Grid Point</em>' attribute.
	 * @see #setLatitudeOfLastGridPoint(int)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_LatitudeOfLastGridPoint()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='La2' description_en='Latitude of Last grid point (see Note 1)'"
	 * @generated
	 */
	int getLatitudeOfLastGridPoint();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLatitudeOfLastGridPoint <em>Latitude Of Last Grid Point</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Latitude Of Last Grid Point</em>' attribute.
	 * @see #getLatitudeOfLastGridPoint()
	 * @generated
	 */
	void setLatitudeOfLastGridPoint(int value);

	/**
	 * Returns the value of the '<em><b>Longitude Of Last Grid Point</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Longitude Of Last Grid Point</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Longitude Of Last Grid Point</em>' attribute.
	 * @see #setLongitudeOfLastGridPoint(int)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_LongitudeOfLastGridPoint()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Lo2' description_en='Longitude of last grid point (see Note 1)'"
	 * @generated
	 */
	int getLongitudeOfLastGridPoint();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getLongitudeOfLastGridPoint <em>Longitude Of Last Grid Point</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Longitude Of Last Grid Point</em>' attribute.
	 * @see #getLongitudeOfLastGridPoint()
	 * @generated
	 */
	void setLongitudeOfLastGridPoint(int value);

	/**
	 * Returns the value of the '<em><b>Type Of Horizontal Line</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Type Of Horizontal Line</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Type Of Horizontal Line</em>' attribute.
	 * @see #setTypeOfHorizontalLine(byte)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_TypeOfHorizontalLine()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Type of horizontal line' description_en='Type of horizontal line (see Code table 3.20)'"
	 * @generated
	 */
	byte getTypeOfHorizontalLine();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getTypeOfHorizontalLine <em>Type Of Horizontal Line</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Type Of Horizontal Line</em>' attribute.
	 * @see #getTypeOfHorizontalLine()
	 * @generated
	 */
	void setTypeOfHorizontalLine(byte value);

	/**
	 * Returns the value of the '<em><b>Number Of Vertical Points</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Number Of Vertical Points</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Number Of Vertical Points</em>' attribute.
	 * @see #setNumberOfVerticalPoints(short)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_NumberOfVerticalPoints()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Number of vertical points' description_en='Number of vertical points'"
	 * @generated
	 */
	short getNumberOfVerticalPoints();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getNumberOfVerticalPoints <em>Number Of Vertical Points</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Number Of Vertical Points</em>' attribute.
	 * @see #getNumberOfVerticalPoints()
	 * @generated
	 */
	void setNumberOfVerticalPoints(short value);

	/**
	 * Returns the value of the '<em><b>Physical Meaning Of Vertical Coordinate</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Physical Meaning Of Vertical Coordinate</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Physical Meaning Of Vertical Coordinate</em>' attribute.
	 * @see #setPhysicalMeaningOfVerticalCoordinate(byte)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_PhysicalMeaningOfVerticalCoordinate()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Physical meaning of vertical coordinate' description_en='Physical meaning of vertical coordinate (see Code table 3.15)'"
	 * @generated
	 */
	byte getPhysicalMeaningOfVerticalCoordinate();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getPhysicalMeaningOfVerticalCoordinate <em>Physical Meaning Of Vertical Coordinate</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Physical Meaning Of Vertical Coordinate</em>' attribute.
	 * @see #getPhysicalMeaningOfVerticalCoordinate()
	 * @generated
	 */
	void setPhysicalMeaningOfVerticalCoordinate(byte value);

	/**
	 * Returns the value of the '<em><b>Vertical Dimension Coordinate Values Definition</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Vertical Dimension Coordinate Values Definition</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Vertical Dimension Coordinate Values Definition</em>' attribute.
	 * @see #setVerticalDimensionCoordinateValuesDefinition(byte)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_VerticalDimensionCoordinateValuesDefinition()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Vertical dimension coordinate values definition' description_en='Vertical dimension coordinate values definition (see Code table 3.21)'"
	 * @generated
	 */
	byte getVerticalDimensionCoordinateValuesDefinition();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getVerticalDimensionCoordinateValuesDefinition <em>Vertical Dimension Coordinate Values Definition</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Vertical Dimension Coordinate Values Definition</em>' attribute.
	 * @see #getVerticalDimensionCoordinateValuesDefinition()
	 * @generated
	 */
	void setVerticalDimensionCoordinateValuesDefinition(byte value);

	/**
	 * Returns the value of the '<em><b>Number Of Coefficients</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Number Of Coefficients</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Number Of Coefficients</em>' attribute.
	 * @see #setNumberOfCoefficients(short)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_NumberOfCoefficients()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='NC' description_en='Number of coefficients or values used to specify vertical coordinates'"
	 * @generated
	 */
	short getNumberOfCoefficients();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getNumberOfCoefficients <em>Number Of Coefficients</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Number Of Coefficients</em>' attribute.
	 * @see #getNumberOfCoefficients()
	 * @generated
	 */
	void setNumberOfCoefficients(short value);

	/**
	 * Returns the value of the '<em><b>Coefficients Offset</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Coefficients Offset</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Coefficients Offset</em>' attribute.
	 * @see #setCoefficientsOffset(long)
	 * @see org.mro.grib.model.files.secondEdition.grids.GridsPackage#getGridDefinitionTemplate31000_CoefficientsOffset()
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/GenModel label_en='Coefficients offset' description_en='Offset of the coefficients to define vertical dimension coordinate values in functional form, or the explicit\r\ncoordinate values (IEEE 32-bit floating-point values)'"
	 * @generated
	 */
	long getCoefficientsOffset();

	/**
	 * Sets the value of the '{@link org.mro.grib.model.files.secondEdition.grids.GridDefinitionTemplate31000#getCoefficientsOffset <em>Coefficients Offset</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Coefficients Offset</em>' attribute.
	 * @see #getCoefficientsOffset()
	 * @generated
	 */
	void setCoefficientsOffset(long value);

} // GridDefinitionTemplate31000
